/**
 * 无害化处理企业
 * @constructor
 */
function Home5() {
}

Home5.init = function () {
    //菜单显示
    authority();
    //待运输提醒
    $('#tableList').bootstrapTable({
        url: '/harmlessReportTransport/tableSearch',
        method: 'post',
        striped : true, //是否显示行间隔色
        toolbar: "#toolbar",
        sidePagination: "true",
        dataField: "data",//这是返回的json数组的key.默认是"rows".这里只有前后端约定好就行
        showToggle : false, //是否显示详细视图和列表视图的切换按钮
        striped: true, // 是否显示行间隔色
        //search : "true",
        uniqueId: "id",
        // pageList : [ 5, 10, 20,50,100],//可选择单页记录数
        pageSize: "5",
        pagination: true, // 是否分页
        sortable: false, // 是否启用排序
        sidePagination: 'server', // 设置为服务器端分页     客户端：client
        search:false,
        showColumns: false,
        showRefresh: false,
        showFooter:false,
        //得到查询的参数
        queryParams: function (params) {
            //这里的键的名字和控制器的变量名必须一直，这边改动，控制器也需要改成一样的
            var query_params = {
                //********table的参数 不变
                pageSize: params.limit,                         //页面大小
                pageIndex: (params.offset / params.limit) + 1,   //页码
                sort: params.sort,      //排序列名
                sortOrder: params.order, //排位命令（desc，asc）
                //********
                //获取查询的对象，往下加入
            };
            return query_params;
        },
        columns:[
            {
                //field: 'Number',//可不加
                title: '序号',//标题  可不加
                align: "center",
                width: 40,
                visible: false,
                formatter: function (value, row, index) {
                    var pageSize=$('#tableList').bootstrapTable('getOptions').pageSize;//通过表的#id 可以得到每页多少条
                    var pageNumber=$('#tableList').bootstrapTable('getOptions').pageNumber;//通过表的#id 可以得到当前第几页
                    return pageSize * (pageNumber - 1) + index + 1;//返回每条的序号： 每页条数 * （当前页 - 1 ）+ 序号
                }
            },
            {
                field:'createTime',
                align: 'center',
                title: '上报日期'
            },
            {
                field:'enterpriseName',
                align: 'center',
                title: '病死动物来源'
            },
            {
                field:'animal',
                align: 'center',
                title: '病死动物畜别'
            },
            {
                field:'dead',
                align: 'center',
                title: '数量'
            },
            {
                align: 'center',
                width: '15%',
                formatter:function(value,row,index){
                    let optionHtml = "<a class=\"btn btn-info btn-xs\"  href=\"javascript:void(0)\"  onclick='transport(" + JSON.stringify(row) + ")'  title=\"运输\" >运输</a>";
                    optionHtml += " <a class=\"btn btn-info btn-xs\" href=\"javascript:void(0)\"  onclick='show(" + JSON.stringify(row) + ")' title=\"查看详情\">查看详情</a>";
                    return optionHtml;
                }
            },
        ]
    });
    //待处理
    $('#tableList1').bootstrapTable({
        url: '/harmlessReportPending/tableSearch',
        method: 'post',
        striped : true, //是否显示行间隔色
        toolbar: "#toolbar",
        sidePagination: "true",
        dataField: "data",//这是返回的json数组的key.默认是"rows".这里只有前后端约定好就行
        showToggle : false, //是否显示详细视图和列表视图的切换按钮
        striped: true, // 是否显示行间隔色
        //search : "true",
        uniqueId: "id",
        // pageList : [ 5, 10, 20,50,100],//可选择单页记录数
        pageSize: "5",
        pagination: true, // 是否分页
        sortable: false, // 是否启用排序
        sidePagination: 'server', // 设置为服务器端分页     客户端：client
        search:false,
        showColumns: false,
        showRefresh: false,
        showFooter:false,
        //得到查询的参数
        queryParams: function (params) {
            //这里的键的名字和控制器的变量名必须一直，这边改动，控制器也需要改成一样的
            var query_params = {
                //********table的参数 不变
                pageSize: params.limit,                         //页面大小
                pageIndex: (params.offset / params.limit) + 1,   //页码
                sort: params.sort,      //排序列名
                sortOrder: params.order, //排位命令（desc，asc）
                //********
                //获取查询的对象，往下加入
            };
            return query_params;
        },
        columns:[
            {
                //field: 'Number',//可不加
                title: '序号',//标题  可不加
                align: "center",
                width: 40,
                visible: false,
                formatter: function (value, row, index) {
                    var pageSize=$('#tableList1').bootstrapTable('getOptions').pageSize;//通过表的#id 可以得到每页多少条
                    var pageNumber=$('#tableList1').bootstrapTable('getOptions').pageNumber;//通过表的#id 可以得到当前第几页
                    return pageSize * (pageNumber - 1) + index + 1;//返回每条的序号： 每页条数 * （当前页 - 1 ）+ 序号
                }
            },
            {
                field:'createTime',
                align: 'center',
                title: '上报日期'
            },
            {
                field:'animal',
                align: 'center',
                title: '病死动物畜别'
            },
            {
                field:'dead',
                align: 'center',
                title: '数量'
            },
            {
                field:'cause',
                align: 'center',
                title: '死亡原因'
            },
            {
                field:'driver',
                align: 'center',
                title: '承运人姓名'
            },
            {
                field:'car',
                align: 'center',
                title: '车牌号'
            },
            {
                field:'phone',
                align: 'center',
                title: '联系电话'
            },
            {
                align: 'center',
                width: '15%',
                formatter:function(value,row,index){
                    let optionHtml = "<a class=\"btn btn-info btn-xs\"  href=\"javascript:void(0)\"  onclick='handle(" + JSON.stringify(row) + ")'  title=\"处理\" >处理</a>";
                    return optionHtml;
                }
            },
        ]
    });
    //通知公告
    $('#tableList4').bootstrapTable({
        url: '/noticeUsers/tableSearch',
        method: 'post',
        striped : true, //是否显示行间隔色
        toolbar: "#toolbar",
        sidePagination: "true",
        dataField: "data",//这是返回的json数组的key.默认是"rows".这里只有前后端约定好就行
        showToggle : false, //是否显示详细视图和列表视图的切换按钮
        striped: true, // 是否显示行间隔色
        //search : "true",
        uniqueId: "id",
        // pageList : [ 5, 10, 20,50,100],//可选择单页记录数
        pageSize: "5",
        pagination: true, // 是否分页
        sortable: false, // 是否启用排序
        sidePagination: 'server', // 设置为服务器端分页     客户端：client
        search:false,
        showColumns: false,
        showRefresh: false,
        showFooter:false,
        //得到查询的参数
        queryParams: function (params) {
            //这里的键的名字和控制器的变量名必须一直，这边改动，控制器也需要改成一样的
            var query_params = {
                //********table的参数 不变
                pageSize: params.limit,                         //页面大小
                pageIndex: (params.offset / params.limit) + 1,   //页码
                sort: params.sort,      //排序列名
                sortOrder: params.order, //排位命令（desc，asc）
                //********
                //获取查询的对象，往下加入
                status:0
            };
            return query_params;
        },
        columns:[
            {
                //field: 'Number',//可不加
                // title: '序号',//标题  可不加
                align: "center",
                width: 40,
                visible: false,
                formatter: function (value, row, index) {
                    var pageSize=$('#tableList4').bootstrapTable('getOptions').pageSize;//通过表的#id 可以得到每页多少条
                    var pageNumber=$('#tableList4').bootstrapTable('getOptions').pageNumber;//通过表的#id 可以得到当前第几页
                    return pageSize * (pageNumber - 1) + index + 1;//返回每条的序号： 每页条数 * （当前页 - 1 ）+ 序号
                }
            },
            {field: 'content', align: 'center'},
            {
                align: 'center',
                width: '15%',
                formatter:function(value,row,index){
                    let optionHtml = "<a class=\"btn btn-info btn-xs\"  href=\"javascript:void(0)\"  onclick='seeNotice(" + JSON.stringify(row) + ")'  title=\"查看\" >查看</a>";
                    return optionHtml;
                }
            },
        ]
    });
    //推送消息列表
    $('#tableList3').bootstrapTable({
        url: '/newsUsers/tableSearch',
        method: 'post',
        striped : true, //是否显示行间隔色
        toolbar: "#toolbar",
        sidePagination: "true",
        dataField: "data",//这是返回的json数组的key.默认是"rows".这里只有前后端约定好就行
        showToggle : false, //是否显示详细视图和列表视图的切换按钮
        striped: true, // 是否显示行间隔色
        //search : "true",
        uniqueId: "id",
        // pageList : [ 5, 10, 20,50,100],//可选择单页记录数
        pageSize: "5",
        pagination: true, // 是否分页
        sortable: false, // 是否启用排序
        sidePagination: 'server', // 设置为服务器端分页     客户端：client
        search:false,
        showColumns: false,
        showRefresh: false,
        showFooter:false,
        //得到查询的参数
        queryParams: function (params) {
            //这里的键的名字和控制器的变量名必须一直，这边改动，控制器也需要改成一样的
            var query_params = {
                //********table的参数 不变
                pageSize: params.limit,                         //页面大小
                pageIndex: (params.offset / params.limit) + 1,   //页码
                sort: params.sort,      //排序列名
                sortOrder: params.order, //排位命令（desc，asc）
                //********
                //获取查询的对象，往下加入
                status:0
            };
            return query_params;
        },
        columns:[
            {
                //field: 'Number',//可不加
                // title: '序号',//标题  可不加
                align: "center",
                width: 40,
                visible: false,
                formatter: function (value, row, index) {
                    var pageSize=$('#tableList3').bootstrapTable('getOptions').pageSize;//通过表的#id 可以得到每页多少条
                    var pageNumber=$('#tableList3').bootstrapTable('getOptions').pageNumber;//通过表的#id 可以得到当前第几页
                    return pageSize * (pageNumber - 1) + index + 1;//返回每条的序号： 每页条数 * （当前页 - 1 ）+ 序号
                }
            },
            {field: 'content', align: 'center'},
            {
                align: 'center',
                width: '15%',
                formatter:function(value,row,index){
                    let optionHtml = "<a class=\"btn btn-info btn-xs\"  href=\"javascript:void(0)\"  onclick='seeNews(" + JSON.stringify(row) + ")'  title=\"查看\" >查看</a>";
                    return optionHtml;
                }
            },
        ]
    });
}
let harmlessReportID = 0;
//运输
function transport(data) {
    console.log("data",data);
    $("#createTime").val(data.createTime);
    $("#dead").val(data.dead);
    $("#animal").val(data.animal);
    $("#enterpriseName").val(data.enterpriseName);
    harmlessReportID = data.harmlessReportID;
    $('#myModalAdd').modal('show');
}
//运输详情
function show(data) {
    $("#user").val(data.user);
    $("#createTime2").val(data.createTime);
    $("#enterpriseName2").val(data.enterpriseName);
    $("#userName").val(data.userName);
    $("#detailedAddress").val(data.detailedAddress);
    $("#ephone").val(data.ephone);
    $("#animal2").val(data.animal);
    $("#dead2").val(data.dead);
    $("#cause2").val(data.cause);
    $('#myModalAdd3').modal('show');
}

//运输
function saveRecord() {
    if(!validateForm()) return false;
    var postdata = {
        harmlessReportID: harmlessReportID,
        driver:$("#driver").val(),
        car:$("#car").val(),
        phone:$("#phone").val(),
    };
    //发送异步请求到后台保存用户数据
    $.ajax({
        url:"/harmlessReportTreatment/transport",
        type:"post",
        data:JSON.stringify(postdata),
        contentType:"application/json",
        dataType:"json",
        success:function(data){
            if (data.code === "200") {
                $('#myModalAdd').modal('hide')
                $("#tableList").bootstrapTable("refreshOptions",{pageNumber:1});
                swal("操作成功!", "请继续操作", "success");
            } else {
                swal("操作失败!", "请重试", "error");
            }
        }
    });
}
//处理
let harmlessReportID1 = 0;
let img = "";
let animalTypes = '';
function handle(data) {
    animalTypes = data.animalTypes;
    harmlessReportID1 = data.harmlessReportID;
    $("#createTime1").val(data.createTime);
    $("#dead1").val(data.dead);
    $("#animal1").val(data.animal);
    $("#cause").val(data.cause);
    $("#driver1").val(data.driver);
    $("#car1").val(data.car);
    $("#phone1").val(data.phone);
    //显示文件选择
    $("#uploadImages").css("display","");
    var file = $("#uploadImages") ;
    file.after(file.clone().val(""));
    file.remove();
    //隐藏图片
    $("#showImage").css("display","none");
    img = "";
    $('#myModalAdd1').modal('show');
}

/**
 * 图片上传
 */
function ImportImages() {
    if ($("#uploadImages").val() == "") {
        alert("请选择上传图片");
        return;
    }
    $.ajaxFileUpload({
        url: '/image/uploadImages',
        secureuri: false,
        fileElementId: "uploadImages",
        dataType: 'json',
        success: function (data, status) {
            img = data.url;
            //隐藏文件选择
            $("#uploadImages").css("display","none");
            //图片回显
            $("#showImage").css("display","");
            $("#showImage").attr("src",data.httpUrl);
        },
        error: function (data, status, e) {
            console.log("上传图片失败", e);
        }

    });
}
//处理
function saveRecord1() {
    if(!validateForm1()) return false;
    var postdata = {
        harmlessReportID: harmlessReportID1,
        code: $("#code").val(),
        method: $("#method").val(),
        person: $("#person").val(),
        img:img,
        animalTypes:animalTypes
    };
    //发送异步请求到后台保存用户数据
    $.ajax({
        url:"/harmlessReportTreatment/treatment",
        type:"post",
        data:JSON.stringify(postdata),
        contentType:"application/json",
        dataType:"json",
        success:function(data){
            if (data.code === "200") {
                $('#myModalAdd1').modal('hide')
                $("#tableList1").bootstrapTable("refreshOptions",{pageNumber:1});
                swal("操作成功!", "请继续操作", "success");
            } else {
                swal("操作失败!", "请重试", "error");
            }
        }
    });
}
//查看公告
function seeNotice(data) {
    $.ajax({
        url: "/noticeUsers/read/"+data.id,
        type: "get",
        contentType: "application/json",
        dataType: "json",
        success: function (dat) {
            if (dat.code === "200") {
                $('#title').html(dat.data.title);
                $('#myContent').html(dat.data.content);
                $('#publisher').text(dat.data.userName);
                $('#publisheTime').text('       '+dat.data.noticeDate);
                if (data.enclosure != null && data.enclosure != ""){
                    $("#showEnclosure").show();
                    $("#downEnclosure").attr("href",dat.data.enclosure);
                }else {
                    $("#showEnclosure").hide();
                    $("#downEnclosure").attr("href","");
                }
                $('#myModalView').modal('show')
                $("#tableList4").bootstrapTable("refreshOptions",{pageNumber:1});
            }
        }
    });
}
//查看推送消息
function seeNews(data){
    $.ajax({
        url: "/newsUsers/read/"+data.id,
        type: "get",
        contentType: "application/json",
        dataType: "json",
        success: function (dat) {
            if (dat.code === "200") {
                $('#title1').html(dat.data.title);
                $('#myContent1').html(dat.data.content);
                $('#publisher1').text(dat.data.userName);
                $('#publisheTime1').text('       '+dat.data.createTime);
                $('#myModalView1').modal('show')
                $("#tableList3").bootstrapTable("refreshOptions",{pageNumber:1});
            }
        }
    });
}
jQuery.validator.addMethod("isPhone", function(value, element) {
    var phone = $('#phone').val();
    if(phone!=''){
        var reg01 = /^(0|86|17951)?(13[0-9]|15[012356789]|17[01678]|18[0-9]|14[57])[0-9]{8}$/;
        var reg02 = /^(0[0-9]{2,3}\-)([2-9][0-9]{6,7})+(\-[0-9]{1,4})?$/;
        if(!reg01.test(phone) && !reg02.test(phone)){
            return false
        }
    }
    return true;
}, "(请输入正确的联系方式)");
//运输 表单验证
function validateForm() {
    //validate方法参数可选
    return $("#myform").validate({
        rules: {
            driver: {
                required: true,//必填
                minlength: 1, //最少1个字符
            },
            car: {
                required: true,//必填
                minlength: 1, //最少1个字符
            },
            phone: {
                required: true,//必填
                minlength: 1, //最少1个字符
                isPhone:true,
            },
        },
        //错误信息提示
        messages: {
            driver: {
                required: "(必填)",
                minlength: "最少1位",
            },
            car: {
                required: "(必填)",
                minlength: "最少1位",
            },
            phone: {
                required: "(必填)",
                minlength: "最少1位",
                isPhone:"(请输入正确的联系方式)"
            },
        },
    }).form();
}
//处理 表单验证
function validateForm1() {
    //validate方法参数可选
    return $("#myform1").validate({
        rules: {
            code: {
                required: true,//必填
                minlength: 1, //最少1个字符
            },
            person: {
                required: true,//必填
                minlength: 1, //最少1个字符
            },
        },
        //错误信息提示
        messages: {
            code: {
                required: "(必填)",
                minlength: "最少1位",
            },
            person: {
                required: "(必填)",
                minlength: "最少1位",
            },
        },
    }).form();
}

function authority() {
    $.ajax({
        url: "/home/authority",
        type: "post",
        contentType: "application/json",
        dataType: "json",
        success: function (data) {
            if (data == null){
                return false;
            }
            if (data.newsusers == 0){
                $("#newsusers").hide();
            }
            if (data.noticeUsers == 0){
                $("#noticeUsers").hide();
            }
            if (data.harmlessReportTransport == 0){
                $("#harmlessReportTransport").hide();
            }
            if (data.harmlessReportPending == 0){
                $("#harmlessReportPending").hide();
            }
        }
    });
}